This invention relates to providing a discernable indication of execution of a computer program. More particularly, the invention relates to the use of sound to indicate the flow of control or data during program execution. More specifically still, the invention relates to the use of sound attributes to discriminate and localize software anomalies in the debug context. A reduction to practice has been made in a mixed-type procedural language (C) and an object-oriented language (SmallTalk/V).
Debugging is taken to be a measure of functional efficacy of a computer program as applied to segments of the program. Relatedly, the patent and technical literature shows debugging facilities which employ elaborate visual indications of software function. For example:
as where source code segments are mapped onto an execution progress displayed in graph constructs (Saito et al, U.S. Pat. No. 4,730,315);
as where source code is executed in different versions and perceived differences are displayed (Kerr et al, U.S. Pat. No. 4,696,003);
as where test case statements exercised by target software and executed results are displayed and self-checked (Bird, U.S. Pat. No. 4,464,655); and
as where source code is selectively traced at run time by means of command line arguments without recompiling (Ream, U.S. Pat. No. 4,802,165).
Audio evidence of computer program events is used in a number of automated contexts. In an article entitled "Infosound: An Audio Aid to Program Comprehension" by Sonenwald, et al, Proceedings of the Twenty-Third Annual Hawaii International Conference on System Sciences, Vol. II, 1990, pp. 541-546, description is given of a system which links musical sequences and special sound effects to application program events. Audio cues ("earcons") corresponding to visual cue ("icons") are provided in a computer interface described by Sumikawa, et al in "Design Guidelines for the Use of Audio Cues in Computer Interfaces", UCRL-92925, Lawrence Livermore National Laboratory and University of California, Davis, Jul. 1, 1985. Peterson ("The Sound of Data", Science News, Vol. 127, Jun. 1, 1985, pp. 348-350) suggests that object attributes can be discerned from time-varying audio signatures mapped from patterns in numerical data, infrared spectra, chemical compounds, and the like. The prior art also teaches computer system audio outputs for entertainment, target illumination, alarm and threshold purposes. However, the inventor is aware of no reference which teaches the use of sound attributes to discriminate and localize software anomalies in the debug context.
Accordingly, the need exists for a method and a means employing sound in the software development environment. Preferably, sound would be employed to communicate global information about computer program execution and data structures. Advantageously, such a technique would provide an auditory indication of flow of program control and data flow in response to program execution. The unexpected result provided by use of non-speech sound in this manner would be enhancement of a programmer's debugging ability and understanding of program operation.